1. Field of the Invention
The present invention relates to a method and apparatus to manage call control in a Computer Telephone Interface (CTI) system.
2. Description of the Related Art
In typical telephone systems, such as a keyphone and an exchange, a Computer Telephone Interface (CTI) executes application software for providing functions including call processing, automatic dialing, automatic screen pop-up and switching, and calling-number identification, together with additional functions including voice storage and restore, voice recognition, and facsimile interfacing.
A link configuration of the CTI is suitable for simple applications supporting a small group of users and a single user, and for complex applications requiring call tracking and transfer services for mid-size or larger groups, such as servers. Furthermore, a CTI server shares computer resources, such as functions or applications, with other servers, and is used in an environment including a Data Signal Processing (DSP) system for system architecture flexibility.
A CTI system builds a CTI driver on a computer for performing a telephone function using typical application software through a Computer Telephone Integration (CTI) Application Programming Interface (API), which supports the Telephony Application Programming Interface (TAPI)/Telephony Standard application Programming Interface (TSPI) standard.
The operation of a CTI system including a computer terminal for transmitting and receiving a call control message to and from a wireless terminal by building such a CTI driver is described as follows.
FIG. 1 is a signal flow diagram of the operation of controlling a wireless terminal using a computer terminal of a CTI system.
Referring to FIG. 1, the CTI system includes a computer terminal 10, an exchange 20, and a number of wireless terminals 30.
When a request to control the wireless terminal 30 has been received from a user (S1), the computer terminal 10 calls a CTI command using a CTI command API in response to the request to control the input wireless terminal 30 (S2).
The computer terminal 10 then calls a CTI driver through an API function of the CTI command API (S3), so that the CTI command is transmitted to the exchange 20 via an exchange interface driver (S4).
The exchange 20 receives the CTI command from the computer terminal 10 via a computer interface (S5) and parses the received CTI command using a parsing routine (S6).
The exchange 20 confirms a terminal-state-information management routine from the parsed CTI command and recognizes a call control routine for the wireless terminal 30 to be controlled (S7).
The exchange 20 then calls a call control command routine for the call wireless terminal 30 through the call control routine, generates a call control command using a typical SIP or an internal protocol of the wireless terminal 30 (S8), and transmits the generated call control command to the wireless terminal 30 via its wireless-terminal interface (S9).
The wireless terminal 30 receives the call control command from the exchange 20 via its exchange interface (S10), and parses the received call control command using a call control command parsing routine for the wireless terminal 30 (S11).
The wireless terminal 30 activates a call control function to process the requested call control (S12).
FIG. 2 is a signal flow diagram of the operation of controlling a computer terminal using a wireless terminal of a CTI system.
As shown in FIG. 2, when a user's request to effect voice communication with the computer terminal 10 or to terminate ongoing voice communication has been received (S21), the wireless terminal 30 generates a wireless-terminal call control event message through its call control function (S22).
The wireless terminal 30 generates the call control event message using an SIP or an internal protocol of the exchange 20 and the wireless terminal 30.
The wireless terminal 30 transmits the generated call control event message to the exchange 20 via its exchange interface (S23).
When the call control event message has been received from the wireless terminal 30 via its wireless-terminal interface (S24), the exchange 20 parses the received call control event message using an event parsing routine (S25), and recognizes state information of the wireless terminal 30 using a state-information management routine for the wireless terminal 30 (S26).
Recognizing the state information of the wireless terminal 30, the exchange 20 performs call control through a call control routine based on the recognized state information of the wireless terminal 30 (S27).
The exchange 20 generates a CTI event message in response to the call control event message from the wireless terminal 30 (S28), and transmits the generated CTI event message to the computer terminal 10 via the computer interface (S29).
When the CTI event message is received from the exchange 20 via the exchange interface driver (S30), the computer terminal 10 calls the CTI event API using the CTI driver (S31) and finally processes the received CTI event message using the CTI event ATI (S32).
Since the CTI system needs to support a TAPI-based CTI API to process messages transmitted and received between the computer terminal 10 and the wireless terminal 30, the CTI system must be fully built even for simply controlling the wireless terminal 30. This reduces economic efficiency and increases development and manufacturing costs.